// pages/main/main.js
var timestamps = Math.round(new Date().getTime() / 1000).toString();
Page({

    goDetail(e){
        wx.navigateTo({
          // 跳转到详情页面同时携带商品id
          url: '/pages/medicinePlanInfo/medicinePlanInfo?id=' + e.currentTarget.dataset.id,
        })
    },
    onLoad() {
        this.getList();
    },

    onShow: function () {
        this.getList();
    },
    addMedicalPlan(){
        wx.navigateTo({
        url: '../addMedicinePlan/addMedicinePlan',
        })
    },
    getList(){
      wx.cloud.database().collection('medicineRemind').get()
        .then(res => {
            console.log('请求列表数据成功', res);
            this.setData({
                list: res.data
            })
            console.log(list, "你好");
        }).catch(err => {
            console.log('请求失败1111');
        }) 
    },
    touchStart: function(e){
      let that = this;
      //开始触摸时 重置所有删除
      that.data.list.forEach(function (v, i) {
          if (v.isTouchMove) v.isTouchMove = false; // 只操作为true的
      })
      // 记录手指触摸开始坐标
      that.setData({
          startX: e.changedTouches[0].clientX,  // 开始X坐标
          startY: e.changedTouches[0].clientY,  // 开始Y坐标
          list: that.data.list
      })
  },

  // 手指触摸后移动
  touchMove: function(e){
      let that = this,
          index = e.currentTarget.dataset.index,    // 当前下标
          startX = that.data.startX,                // 开始X坐标
          startY = that.data.startY,                // 开始Y坐标
          touchMoveX = e.changedTouches[0].clientX, // 滑动变化坐标
          touchMoveY = e.changedTouches[0].clientY, // 滑动变化坐标
          // 获取滑动角度
          angle = that.angle({ X: startX, Y: startY }, { X: touchMoveX, Y: touchMoveY });
　　　　　// 判断滑动角度
      that.data.list.forEach(function (v, i) {
          v.isTouchMove = false
          // 滑动超过30度角 return
          if (Math.abs(angle) > 30) return;
          if (i == index) {
              // 右滑
              if (touchMoveX > startX) 
                  v.isTouchMove = false
              // 左滑
              else 
                  v.isTouchMove = true
          }
    })
    // 更新数据
    that.setData({
        list: that.data.list
    })
  },

  // 计算滑动角度
  angle: function (start, end) {
      let that = this,
      _X = end.X - start.X,
      _Y = end.Y - start.Y; 
      // 返回角度 /Math.atan()返回数字的反正切值
      return 360 * Math.atan(_Y / _X) / (2 * Math.PI);
  },

  // 删除
  delList: function(e){
      let that = this;
      console.log(this.data.list[e.currentTarget.dataset.index]);      
      var index = e.currentTarget.dataset.index;  // 当前下标
      var id = this.data.list[e.currentTarget.dataset.index]._id;
      wx.cloud.database().collection('medicineRemind')
      .doc(id)
      .remove()
      .then(res => {
          console.log('删除成功');
          wx.showToast({
            icon:"none",
            title: '删除成功',
          })
          this.getList();
      })
      .catch(res=>{
          console.log('删除失败');
          wx.showToast({
            icon:"none",
            title: '删除失败',
          })
      })
      // 切割当前下标元素，更新数据
      console.log(that.data.list[index].title);
      that.data.list.splice(index, 1); 
      that.setData({
          list: that.data.list
      })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      this.getList();
      // 动态获取屏幕高度
      this.setData({
          scrollHeight: wx.getSystemInfoSync().screenHeight/2
      })
  },

    /**
     * 生命周期函数--监听页面加载
     */

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})